1. Field of the Invention
The present invention generally relates to a method of optimizing a set of machine operations and/or a machine design. Specifically, an input provides data for the results desired from the eventual manufacturing process and the constraints upon the planned operations or the machine design. An operation space is determined, based on identifying reasonable operations for achieving individual desired results, or a design space is determined by enumerating a class of designs. The operation space is subjected to a selection and/or sequencing process, to yield an efficient set or sequence of operations, or the design space is narrowed by a process of evaluating and filtering designs or by a series of such processes. An exemplary operation-space embodiment addresses optimization of a via hole punching operation for multi-layer ceramic modules (MLCs), in which the selection and sequencing process on the operation space is performed by a solver for the Generalized Traveling Salesman Problem (GTSP). An exemplary design-space embodiment addresses optimization of a die or dice used in the MLC punching operation, in which a die design space is identified and then narrowed by a series of one or more filters, each filter using a different evaluation approach.
2. Description of the Related Art
Multi-layer ceramic modules (MLCs) are a high-performance chip-mounting technology, consisting of layers of ceramic insulator alternating with metallic wiring layers. Electrical contacts between layers are made with “vias”, columns of metal passing through one or more ceramic layers. Manufacturing of the vias requires via holes to be punched in each green sheet (“green” refers to the not-yet-fired ceramic material) before the sheets are laminated together). The holes are punched by a numerically controlled (NC) machine that moves a “die” over the green sheet. In current manufacturing practice, in fact, the die is stationary and the sheet is moved, but the difference is immaterial for our purposes, and it is simpler to think in terms of moving the die.
The die bears a set of individually actuatable “punches”, also referred to as “pins”, at fixed relative locations, and at each stop of the NC machine, those punches aligned with desired hole positions are fired to punch the holes. Individual control of the punches is a powerful degree of freedom allowed by this sophisticated machine.
For each green sheet “part number”, a single die is used. Only one die can be mounted in the NC machine at a time, and a green sheet cannot be run through the machine twice, because its alignment holes are damaged by use. Many identical green sheets are typically punched successively before the NC machine is reprogrammed to punch a different green sheet with the same die, or is reprogrammed and fitted with a different die for a different green sheet. There is wide variation, but the time needed to punch a green sheet is typically about a minute, comprised of 1000 punching operations taking about 20 ms each, and a similar amount of travel time from each punch offset to the next.
Due to their high cost, new dice are introduced as rarely as possible. Generally, a die will be matched to some fundamental properties of a design family, in which there is relatively little variation or novelty. To be efficient, it is critical that there be a good match between the die containing the punches and the pattern to be punched. The basic properties are the “pitch” (via positions are typically limited to grid points at this pitch) and “X-up” and “Y-up” numbers.
For example, shown in FIG. 1 is an exemplary 9-up green sheet to eventually be cut into 3×3 identical pieces, each forming say the 17th layer of an MLC. Typically, within each “up block”, most or all via separations are multiples of the grid pitch, but the spacing between the ups, dictated by saw kerf, is an incommensurable distance. Superposed on the pattern of 25,659 vias of FIG. 1 is the pattern of the 225 die pins, the pins illustrated as dots twice as large as the via dots. Inset is an enlargement of the path traversed by each pin.
Because the machining equipment is specialized, expensive, and space-consuming, it is desirable to produce each sheet in as little time as possible. Therefore, there remains a need to maximize manufacturing throughput of green sheets, and to minimize costs. The problem is two-fold. First, given a fixed die and a pattern to be punched, there is the problem of how to punch the pattern most efficiently. Second, given a pattern or multiple patterns to be punched, there is a problem of designing a good die or set of dice. The approach discussed in detail herein is equally applicable to other specific examples, such as an automated electronic probe operation or an automated laser trimming operation, as well as a general class of combinatorial manufacturing design problems.